A digital resource (or simply a “resource”), as broadly used herein, refers to any unit of digital data stored as an individual entity. Non-limiting, illustrative examples of a resource include a document, an image, a folder, and a file.
Resources may have different types of relationships with each other. In some cases, the relationship between two resources may be identified by one of the resources. For example, a first web page may have a relationship with a second web page because the first web page includes a web link to the second web page. Thus, when a user selects the web link on the first web page, the second web page is displayed to the user.
In other cases, the relationship between two resources may not be identified by either of the two resources. For example, a thumbnail image has a relationship with the original image to which the thumbnail corresponds because both the thumbnail image and the original image depict the same image. However, while both the thumbnail image and the original image depict the same image, there is no indication in either of the thumbnail image or the original image of the existence of the other. As another example, a first text document may have a relationship with a second text document because the content of the first text document includes the content of a second text document. However, the first text document may not identify the existence of the second text document.
Resource management applications are increasingly being used to store resources that are expressed in a self-describing metalanguage, such as the extensible markup language (XML). XML is a language that allows a resource to be defined as a tree of elements. XML is a markup language that allows tagging of document elements and provides for the definition, transmission, validation, and interpretation of data between applications and between organizations.
While XML has been used to describe the contents of a resource, current techniques in the art do not adequately provide for managing the relationships between resources stored in a repository. Consequently, an approach for managing the relationships between resources stored in a repository is desirable. The approaches described in this section are approaches that could be pursued, but not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated, it should not be assumed that any of the approaches described in this section qualify as prior art merely by virtue of their inclusion in this section.